﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;

namespace Com.JunCaiSoft.API.WXWork.Dto
{
    /// <summary>
    /// 文本卡片消息
    /// </summary>
    public class TextCard
    {
        /// <summary>
        /// 成员ID列表（消息接收者，多个接收者用‘|’分隔，最多支持1000个）。特殊情况：指定为@all，则向关注该企业应用的全部成员发送
        /// </summary>
        public virtual String touser { get; set; }
        /// <summary>
        /// 部门ID列表，多个接收者用‘|’分隔，最多支持100个。当touser为@all时忽略本参数
        /// </summary>
        public virtual String toparty { get; set; }
        /// <summary>
        /// 标签ID列表，多个接收者用‘|’分隔，最多支持100个。当touser为@all时忽略本参数
        /// </summary>
        public virtual String totag { get; set; }
        /// <summary>
        /// 消息类型
        /// </summary>
        public virtual String msgtype { get { return "textcard"; } }
        /// <summary>
        /// 企业应用的id，整型。企业内部开发，可在应用的设置页面查看；第三方服务商，可通过接口 获取企业授权信息 获取该参数值
        /// </summary>
        public virtual Int32 agentid { get; set; }
        /// <summary>
        /// 消息体
        /// </summary>
        public virtual TextCardMessageBody textcard { get; set; }
        /// <summary>
        /// 表示是否开启id转译，0表示否，1表示是，默认0
        /// </summary>
        public virtual Int32 enable_id_trans { get; set; }
        /// <summary>
        /// 表示是否开启重复消息检查，0表示否，1表示是，默认0
        /// </summary>
        public virtual Int32 enable_duplicate_check { get; set; }
        /// <summary>
        /// 表示是否重复消息检查的时间间隔，默认1800s，最大不超过4小时
        /// </summary>
        public virtual Int32 duplicate_check_interval { get; set; }
    }
    /// <summary>
    /// 卡片消息消息体
    /// </summary>
    public class TextCardMessageBody
    {
        /// <summary>
        /// 卡片消息标题
        /// </summary>
        public virtual String title { get; set; }
        /// <summary>
        /// 描述
        /// </summary>
        public virtual String description { get; set; }
        /// <summary>
        /// URL
        /// </summary>
        public virtual String url { get; set; }
        /// <summary>
        /// 按钮文字
        /// </summary>
        public virtual String btntxt { get; set; }
    }
}
